#ifndef __DICTPRODUCER_H__
#define __DICTPRODUCER_H__

#include "SplitTool.h"
#include <string>
#include <vector>
#include <map>

using namespace std;
class DictProducer
{
public:
    DictProducer(const string &dir);
    DictProducer(const string &dir,SplitTool *splitTool);

    void build_dict();
    void build_cn_dict();
    void store_dict(const char* filepath);
    void show_files() const;
    void show_dict() const;
    void get_files();
    void push_dict(const string &word);
private:
    void getfile(const string& filepath);
    void read(const char* filepath);//从英文语料文件读取单词
    void read_cn(const char* filepath);//从中文语料文件读取单词 
    string dealword(string& word);

private:
    string _dir;
    vector<string> _files;
    map<string,int> _dict;
    SplitTool* _splitTool;
};

#endif
